package de.tum.in.elitese.wahlsys.persister.persistence_objects;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import de.tum.in.elitese.wahlsys.persister.PersistenceObject;

/**
 * see Table WAHLKREIS
 * 
 * @author Christoph Frenzel
 * 
 */
public class Wahlkreis extends PersistenceObject {
	private static final List<String> FIELD_NAMES = Collections.unmodifiableList(Arrays.asList(new String[] { "NUMMER", "NAME", "STIMMEN", "WAHLBERECHTIGTE", "BUNDESLAND" }));

	private static final String TABLE_NAME = "WAHLKREIS";

	private Bundesland fBundesland;

	private String fName;

	private Short fNummer;

	private Integer fStimmen = 0;

	private Integer fWahlberechtigte = 0;

	public Bundesland getBundesland() {
		return fBundesland;
	}

	public String getName() {
		return fName;
	}

	public Short getNummer() {
		return fNummer;
	}

	@Override
	public List<String> getPersistanceStrings() {
		List<Object> values = new ArrayList<Object>(4);
		values.add(getNummer());
		values.add(getName());
		values.add(getStimmen());
		values.add(getWahlberechtigte());
		values.add(getBundesland().getName());

		List<String> result = new ArrayList<String>(1);
		result.add(createInsertString(TABLE_NAME, FIELD_NAMES, Collections.unmodifiableList(values)));
		return result;
	}

	public Integer getStimmen() {
		return fStimmen;
	}

	public Integer getWahlberechtigte() {
		return fWahlberechtigte;
	}

	public void setBundesland(Bundesland bundesland) {
		fBundesland = bundesland;
	}

	public void setName(String name) {
		fName = name;
	}

	public void setNummer(Short nummer) {
		fNummer = nummer;
	}

	public void setStimmen(Integer stimmen) {
		fStimmen = stimmen;
	}

	public void setWahlberechtigte(Integer wahlberechtigte) {
		fWahlberechtigte = wahlberechtigte;
	}

}
